const  express=require('express')
const  mongoose=require("mongoose")

const app=express()

mongoose.connect('mongodb://localhost/k0904',{
     useUnifiedTopology: true,
    
    
      useNewUrlParser: true 
})
.then(res=>{console.log('成功')})
.catch(err=>{console.log('失败')})


//
const  BooksSchema=new  mongoose.Schema({
    name:String,
    age:Number,
    sex:Boolean,
    hobbies:[String]

})

const  Books=  mongoose.model('Books',BooksSchema)


// for(let i=10;i<=15;i++) {
//     const BooksSheets=new Books({
//         name:i%2==0?'小鲜肉'+i:'老腊肉'+i,
//         age:i,
//         sex:i%2==0?true:false,
//         hobbies:i%2==0?['篮球','养生'+199*i]:['足球','排球'+i]
//     })

//     BooksSheets.save()
// }

//查询数据库  查询所有的
// Books.find({}).then(res=>{console.log(res)})

//查询1条件数据 
// Books.find({_id:'5fa8ada8bb23220c98de610f'}).then(res=>{
//     console.log(res)
// })


//查询多条数据   查询 age 在5-8的数据
// Books.find({age:{$gt:4,$lt:8}}).then(res=>{console.log(res)})


//查询数据按照升序排列  age的升序
// Books.find({}).sort('age').then(res=>console.log(res))

//查询数据按照 age的降序 排列 
//  Books.find({}).sort('-age').then(res=>console.log(res))


 //跳过前3个 查询5个数据出来  age 升序查询 
//  Books.find({}).sort('age').skip(3).limit(5).then(res=>console.log(res))

//   Books.find({}).skip(3).limit(5).sort('-age').then(res=>console.log(res))


//查询指定字段
// Books.find({}).select('name  _id age ').then(res=>{console.log(res)})

//查询 数据  字段 爱好 只包含篮球的 $in 表示在什么范围内
// Books.find({hobbies: {$in: ['足球']} }).then(res=>{console.log(res)})



//删除数据   删除所有的数据
// Books.deleteMany({}).then(res=>{console.log(res)})

//删除1个 
// Books.findByIdAndDelete({_id:'5fa8ba1e100b2648b03ff0ee'}).then(res=>{
//     console.log(res)
// })

// Books.findOneAndDelete({_id:'5fa8ba1e100b2648b03ff0ed'}).then(res=>{
//     console.log(res)
// })


//  { n: 0, ok: 1, deletedCount: 0 }
// Books.deleteOne({_id:'5fa8ba1e100b2648b03ff0ec'}).then(res=>{
//     console.log(res)
// })

//删除多个  age 10-13  

// Books.deleteMany({age:{$gt:9,$lt:14}}).then(res=>{console.log(res)})



//更改数据 
//更改1条数据 
// Books.updateOne({_id:'5fa8bbe6da2e5f3c88aba0df'},{name:'zs',age:2000}).then(res=>{console.log(res)})


// Books.updateOne({_id:'5fa8bbe6da2e5f3c88aba0df'},{name:'zss',age:19,hobbies:['旅游','敲代码']}).then(res=>{console.log(res)})


//更改所有的数据 
// Books.updateMany( {}, {age:102}).then(res=>{console.log(res)})

//更改多条数据
Books.updateMany({age:{$gt:100,$lt:105}},{age:666,name:'zssss'}).then(res=>console.log(res))






















app.listen(3001,()=>{
    console.log('3001启动')
})